Introducing Visio Services


Last week at the SharePoint Conference, the Visio team unveiled Visio Services – a new feature of SharePoint 2010 that extends the reach of diagrams considerably. In a nutshell, Visio Services lets you:

  • View diagrams in the browser without needing Visio on your machine
  • Refresh data-driven diagrams in the browser
  • Integrate diagrams into SharePoint applications

Let’s take a look in more detail at the features behind each of these scenarios.

Viewing diagrams in the browser

A Visio diagram, saved to a SharePoint document library as a Visio Web Drawing (a *.VDW file) using Visio Professional 2010 or Visio Premium 2010, can be viewed in any web browser by simply clicking on its file entry in the document library.

image

The diagram renders in full fidelity in the browser if the person viewing the diagram has Silverlight installed on their machine or as a PNG if not; Visio Services renders seamlessly anything you can draw in Visio. Take a look below to get a feel for the experience:

image

Visio Services enables you to navigate diagrams using easy to use and familiar metaphors for panning, zooming, switching pages, following hyperlinks and discovering shape data. You can also open any Visio Web Drawing in Visio using the “Open in Visio” button. Note that the person viewing the diagram can do so:

  • …in any browser (Internet Explorer, Firefox, Safari etc…)
  • …on any platform
  • …without leaving the browser
  • …without installing Visio, the Viewer or the Drawing Control
  • …without needing to accept multiple dialogs or browser warnings

Also note that because the diagrams are stored in SharePoint document libraries, diagram creators get a variety of useful document management features from SharePoint such as diagram access control using permissions, diagram change tracking using versioning and the ability to attach diagrams to SharePoint workflows.

Refreshing data-driven diagrams

Visio Services has ported Visio’s data connectivity features to the browser! In case you’re not familiar with those features please take a look at “Show it like it is: connect data to your Visio diagram” for a quick summary. Note this demonstration is in done in Visio 2007, but these features are also available in Visio 2010.

In a nutshell, before Visio Services renders a data-driven diagram it fetches the diagram's linked data from an external data source and updates diagram visuals accordingly. Note that once posted to SharePoint, your diagram is a living document that will always represent the current state of your data visually. You never need to update manually again!

Visio Services supports refreshing diagrams connected to one or more of the following data sources:

  • SQL (using either Kerberos, Single Sign On & Unattended Authentication)
  • SharePoint Lists
  • Excel Workbooks hosted in SharePoint
  • Any OLEDB/ODBC data sources that have recent drivers

If the data source you plan to connect your diagrams to isn’t in the list above, don’t worry: Visio Services supports “Custom Data Providers” which enable you, with a few lines of code, to wrap your existing data source into one that Visio Services can consume. We’ll talk about writing your own “Custom Data Provider” in subsequent blog posts.

Finally, note that Visio Services supports refresh on open, user-triggered refresh as well as automatic periodic refresh.

Integrating Visio diagrams into SharePoint Applications

Visio Services also enables you to embed Visio Web Drawings, regardless of whether they are static or dynamic, into SharePoint applications. Depending on your skill level with web technologies there are three ways of doing so:

Integration method

Scenario enabled

Skill set required

The Visio Web Access web part

You can now embed Visio diagrams into SharePoint pages.

You should know how to create a web part page in SharePoint.

Web Part Connections

You can enable limited interactivity between the Visio Web Access web part and another on the page, without code. A typical example of this type of interactivity is to trigger one web part to show extra relevant information about a particular shape when it’s clicked in the Visio web part.

You should know how to create a web part page in SharePoint as well as how to set-up Web Part Connections.

The Visio Services Mash-up API

You can enable rich interactivity on your web part page by manipulating the different Visio web diagram objects programmatically. A typical example of this type of interactivity is to show custom visual overlays when the person viewing the diagram hovers over a particular shape.

You should know how to code JavaScript and/or ASPX pages.

The main take-away is that with very little effort you can add visualization to your dashboards and with a bit more page authoring or some coding you can add rich interactivity between Visio Services and other components on the page. For those of you hungry for details, we’ll be delving into the details of all of these integration features in future blog posts.

How it all works

For the curious among you, here’s a recap of the architecture of Visio Services:

architecture 

Availability and Requirements

Visio Services is scheduled to ship as part of the SharePoint Services 2010 ECAL and will be available in the up-and-coming Beta and RTM releases of SharePoint in both hosted and non-hosted flavors.

In Conclusion

The complete breadth of Visio diagrams can now be shared and refreshed in SharePoint, regardless of whether the person viewing them has Visio installed on their machine. What’s more you can now integrate rich data visualizations into SharePoint dashboards and applications with little effort.

There is much, much more to tell you about this brave new world of browser-based data visualization called Visio Services… but for now, we’ll let you digest this high level overview and start thinking about how browser-based data visualization using Visio Services can be useful to your organization. Stay tuned to the blog, we should have instructions on how to set-up Visio Services and how to create Visio Web Drawings in the next few weeks.

As you try out Visio Services, please let us know what you think, either by commenting on the blog or via Send a Smile.